#include <memory>

namespace Umikaze::Core {

// 用于记录一些边界值的类
class GlCapability {
public:
  static const std::unique_ptr<GlCapability> &instance() {
    if (!_instance) {
      _instance = std::unique_ptr<GlCapability>(new GlCapability());
    }
    return _instance;
  }

  uint32_t _maxTextureUnits;

private:
  GlCapability() {
    // 需要访问gl获得
    _maxTextureUnits = 16;
  }

  static std::unique_ptr<GlCapability> _instance;
};

} // namespace Umikaze::Core